package com.buercc.boot.utils.redis;

import org.springframework.stereotype.Service;

/**
 * https://blog.csdn.net/ai88030669/article/details/78686403
 * @param <T>
 */
@Service()
public interface RedisDBHelper<T extends Object> {

    /**
     * 添加元素
     *
     * @param key
     * @param value
     */
    void put(final String key, T value);

    /**
     * 添加带有时长的元素
     *
     * @param key
     * @param value
     * @param expireTime
     */
    void put(final String key, T value, Long expireTime);

    /**
     * 获取元素
     *
     * @param key
     */
    T get(final String key);

    /**
     * 判断是否有key
     *
     * @param key
     * @return
     */
    boolean hasKey(final String key);

    void remove(final String key);

}
